MySQL CASE Statement

MySQL-এ CASE স্টেটমেন্ট ব্যবহার করে শর্ত এবং রিটার্ন মান পরীক্ষা করতে শিখুন

MySQL CASE বিবৃতি

একটি CASE বিবৃতি শর্তগুলির মধ্য দিয়ে যায় এবং প্রথম শর্ত পূরণ হলে একটি মান প্রদান করে (যদি-তখন-অন্যথার বিবৃতির অনুরূপ)। সুতরাং, যখন একটি শর্ত সত্য হয়, এটি পড়া বন্ধ করবে এবং ফলাফল ফিরিয়ে দেবে। যদি কোনো শর্তই সত্য না হয়, তাহলে এটি ELSE অংশে মান প্রদান করে।

যদি কোনো ELSE অংশ না থাকে এবং শর্তগুলোর কোনোটিই সত্য না হয়, তাহলে এটি NULL প্রদান করে।

CASE সিনট্যাক্স

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    WHEN conditionN THEN resultN
    ELSE result
END;

ডেমো ডাটাবেস

নীচে নর্থওয়াইন্ড নমুনা ডাটাবেসের "অর্ডার বিশদ" টেবিল থেকে একটি নির্বাচন রয়েছে:

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40

MySQL CASE উদাহরণ

নিম্নলিখিত SQL শর্তগুলি পাস করে এবং প্রথম শর্ত পূরণ হলে একটি মান প্রদান করে:

SELECT OrderID, Quantity,
CASE
    WHEN Quantity > 30 THEN 'The quantity is greater than 30'
    WHEN Quantity = 30 THEN 'The quantity is 30'
    ELSE 'The quantity is under 30'
END AS QuantityText
FROM OrderDetails;

নিম্নলিখিত এসকিউএল গ্রাহকদের সিটি অনুসারে বাছাই করবে। যাইহোক, যদি শহর NULL হয়, তাহলে দেশ অনুসারে সাজানো হবে:

SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
    WHEN City IS NULL THEN Country
    ELSE City
END);

অনুশীলন করুন

SQL CASE এক্সপ্রেশন সম্পূর্ণ করতে সঠিক কীওয়ার্ড নির্বাচন করুন।

CASE
✓ ঠিক আছে! CASE হল সেই কীওয়ার্ড যা একটি CASE এক্সপ্রেশন শুরু করে
WHEN Quantity > 50 THEN 'High'
✓ ঠিক আছে! মান 50 এর উপরে হলে এই শর্তটি 'উচ্চ' প্রদান করে
WHEN Quantity <= 50 THEN 'Low'
✓ ঠিক আছে! মান 50 বা তার কম হলে এই শর্তটি 'নিম্ন' প্রদান করে
ELSE
✓ ঠিক আছে! ELSE অন্য সব দৃষ্টান্তে একটি মান ফেরত দিতে ব্যবহৃত হয়
'Unknown'
✓ ঠিক আছে! এটি ELSE ক্ষেত্রের মান
END
✓ ঠিক আছে! END হল সেই কীওয়ার্ড যা একটি CASE এক্সপ্রেশনকে শেষ করে
AS QuantityCategory
✓ ঠিক আছে! এটি আউটপুট কলামের জন্য একটি উপনাম প্রদান করে